Source:NetHack 3.4.0/config1.h
Below is the full text to config1.h from the source code of NetHack 3.4.0. To link to a particular line, write [[NetHack 3.4.0/config1.h#line123]], for example. Warning! This is the source code from an old release. For the latest release, see Source code 1. /* SCCS Id: @(#)config1.h 3.4 1999/12/05 */ 2. /* Copyright © Stichting Mathematisch Centrum, Amsterdam, 1985. */ 3. /* NetHack may be freely redistributed. See license for details. */ 4. 5. #ifndef CONFIG1_H 6. #define CONFIG1_H 7. 8. /* 9. * MS DOS - compilers 10. * 11. * Microsoft C auto-defines MSDOS, 12. * Borland C auto-defines __MSDOS__, 13. * DJGPP auto-defines MSDOS. 14. */ 15. 16. /* #define MSDOS */ /* use if not defined by compiler or cases below */ 17. 18. #ifdef __MSDOS__ /* for Borland C */ 19. # ifndef MSDOS 20. # define MSDOS 21. # endif 22. #endif 23. 24. #ifdef __TURBOC__ 25. # define __MSC /* increase Borland C compatibility in libraries */ 26. #endif 27. 28. #ifdef MSDOS 29. # undef UNIX 30. #endif 31. 32. /* 33. * Mac Stuff. 34. */ 35. #ifdef macintosh /* Auto-defined symbol for MPW compilers (sc and mrc) */ 36. # define MAC 37. #endif 38. 39. #ifdef THINK_C /* Think C auto-defined symbol */ 40. # define MAC 41. # define NEED_VARARGS 42. #endif 43. 44. #ifdef __MWERKS__ /* defined by Metrowerks' Codewarrior compiler */ 45. # ifndef __BEOS__ /* BeOS */ 46. # define MAC 47. # endif 48. # define NEED_VARARGS 49. # define USE_STDARG 50. #endif 51. 52. #if defined(MAC) || defined(__BEOS__) 53. # define DLB 54. # undef UNIX 55. #endif 56. 57. #ifdef __BEOS__ 58. # define NEED_VARARGS 59. #endif 60. 61. 62. /* 63. * Amiga setup. 64. */ 65. #ifdef AZTEC_C /* Manx auto-defines this */ 66. # ifdef MCH_AMIGA /* Manx auto-defines this for AMIGA */ 67. # ifndef AMIGA 68. #define AMIGA /* define for Commodore-Amiga */ 69. # endif /* (SAS/C auto-defines AMIGA) */ 70. #define AZTEC_50 /* define for version 5.0 of manx */ 71. # endif 72. #endif 73. #ifdef __SASC_60 74. # define NEARDATA __near /* put some data close */ 75. #else 76. # ifdef _DCC 77. # define NEARDATA __near /* put some data close */ 78. # else 79. # define NEARDATA 80. # endif 81. #endif 82. #ifdef AMIGA 83. # define NEED_VARARGS 84. # undef UNIX 85. # define DLB 86. # define HACKDIR "NetHack:" 87. # define NO_MACRO_CPATH 88. #endif 89. 90. /* 91. * Atari auto-detection 92. */ 93. 94. #ifdef atarist 95. # undef UNIX 96. # ifndef TOS 97. # define TOS 98. # endif 99. #else 100. # ifdef __MINT__ 101. # undef UNIX 102. # ifndef TOS 103. # define TOS 104. # endif 105. # endif 106. #endif 107. 108. /* 109. * Windows NT Autodetection 110. */ 111. #ifdef _WIN32_WCE 112. # ifndef WIN32 113. # define WIN32 114. # endif 115. #endif 116. 117. #ifdef WIN32 118. # undef UNIX 119. # undef MSDOS 120. # define NHSTDC 121. # define STRNCMPI 122. # define USE_STDARG 123. # define NEED_VARARGS 124. 125. #endif 126. 127. 128. #ifdef VMS /* really old compilers need special handling, detected here */ 129. # undef UNIX 130. # ifdef __DECC 131. # ifndef __DECC_VER /* buggy early versions want widened prototypes */ 132. # define NOTSTDC /* except when typedefs are involved */ 133. # define USE_VARARGS 134. # else 135. # define NHSTDC 136. # define USE_STDARG 137. # define POSIX_TYPES 138. # define _DECC_V4_SOURCE /* avoid some incompatible V5.x changes */ 139. # endif 140. # undef __HIDE_FORBIDDEN_NAMES /* need non-ANSI library support functions */ 141. # else 142. # ifdef VAXC /* must use CC/DEFINE=ANCIENT_VAXC for vaxc v2.2 or older */ 143. # ifdef ANCIENT_VAXC /* vaxc v2.2 and earlier of warnings to come */ 144. # define KR1ED /* simulate defined() */ 145. # define USE_VARARGS 146. # else /* vaxc v2.3,2.4,or 3.x, or decc in vaxc mode */ 147. # if defined(USE_PROTOTYPES) /* this breaks 2.2 (*forces* use of ANCIENT)*/ 148. # define __STDC__ 0 /* vaxc is not yet ANSI compliant, but close enough */ 149. # define signed /* well, almost close enough */ 150. #include 151. # define UNWIDENED_PROTOTYPES 152. # endif 153. # define USE_STDARG 154. # endif 155. # endif /*VAXC*/ 156. # endif /*__DECC*/ 157. # ifdef VERYOLD_VMS /* v4.5 or earlier; no longer available for testing */ 158. # define USE_OLDARGS /* is there, vprintf & vsprintf aren't */ 159. # ifdef USE_VARARGS 160. # undef USE_VARARGS 161. # endif 162. # ifdef USE_STDARG 163. # undef USE_STDARG 164. # endif 165. # endif 166. #endif /*VMS*/ 167. 168. #ifdef vax 169. /* just in case someone thinks a DECstation is a vax. It's not, it's a mips */ 170. # ifdef ULTRIX_PROTO 171. # undef ULTRIX_PROTO 172. # endif 173. # ifdef ULTRIX_CC20 174. # undef ULTRIX_CC20 175. # endif 176. #endif 177. 178. #ifdef KR1ED /* For compilers which cannot handle defined() */ 179. #define defined(x) (-x-1 != -1) 180. /* Because: 181. * #define FOO => FOO={} => defined( ) => (-1 != - - 1) => 1 182. * #define FOO 1 or on command-line -DFOO 183. * => defined(1) => (-1 != - 1 - 1) => 1 184. * if FOO isn't defined, FOO=0. But some compilers default to 0 instead of 1 185. * for -DFOO, oh well. 186. * => defined(0) => (-1 != - 0 - 1) => 0 187. * 188. * But: 189. * defined("") => (-1 != - "" - 1) 190. * is an unavoidable catastrophe. 191. */ 192. #endif 193. 194. #endif /* CONFIG1_H */ config1.h